package hyo.hun.lifemanager.month;

import hyo.hun.lifemanager.CalendarSelectDialogActivity;
import hyo.hun.lifemanager.R;
import hyo.hun.lifemanager.common.SuperActivity;
import hyo.hun.lifemanager.common.SuperInterface;
import hyo.hun.lifemanager.connect.CalendarConnect;

import java.util.ArrayList;
import java.util.Calendar;

import android.R.integer;
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Intent;
import android.graphics.drawable.Drawable;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.v4.view.ViewPager.LayoutParams;
import android.util.Log;
import android.view.Gravity;
import android.view.View;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.TextView;

public class MonthActivity extends SuperActivity implements SuperInterface{
		
	final static int int_line_size=2;
	final static int int_line_count = 7; // / 줄/행수
	final static int int_cell_count = 7; // / 칸/열수

	LinearLayout linearlayout_calendar; // / 달력을 넣을 레이아웃
	
	Calendar calendar_lifemanager; // / 사용할 달력
	LinearLayout[] m_lineLy; // / 7라인 요일표시 + 최대 6주
	LinearLayout[] m_cellLy; // / 7칸
	TextView[] text_dateBtn; // / 각 칸마다 넣을 텍스트뷰 (버튼처럼 이벤트 주려고 Btn 이라 붙였음)
	LinearLayout[] linearlayout_horizontalLine; // / 경계선 라인 가로
	LinearLayout[] linearlayout_verticalLine; // / 경계선 라인 세로

	int int_startPos; // / 요일을 찍기 시작 할 위치
	int int_lastDay; // / 그 달의 마지막날
	int int_selectDay; // / 현재 선택된 날짜

	float m_displayScale; // / 화면 사이즈에 따른 텍스트 크기 보정값 저장용
	float m_textSize; // / 텍스트 사이즈(위 라인의 변수와 곱해짐)
	float m_topTextSize; // / 요일텍스트 사이즈(역시 보정값과 곱해짐)
	
	int int_now_year;
	int int_now_month;

	gsCalendarColorParam m_colorParam;
	//있으면 적용하고 없으면 bgcolor로 처리함( 각각 개별적으로 )
	
	Drawable m_bgImgId = null; // / 전체 배경이미지
	Drawable m_cellBgImgId = null; // / 한칸의 배경 이미지
	Drawable m_topCellBgImgId = null; // / 상단 요일 들어가는 부분의 배경 이미지
	Drawable m_todayCellBgImgId = null; // / 선택 날짜의 배경 이미지
	



	/////////////////////////////////////////
	Button button_preMonth; //전월 버튼
	Button button_nextMonth; //다음월 버튼
	Button button_click; //다음월 버튼
	TextView m_yearTv; //년 표시용 텍스트
	TextView m_mothTv; //월 표시용 텍스트
	TextView m_dayTv; //날짜 표시용 텍스트
	
	//휴일을 MMdd형식으로 넣는다.
	//구정이 2월 4 5 6이라면
	//[0204] [0205] [0206] 이렇게 넣음
	ArrayList<Integer> arraylis_holiDay = new ArrayList<Integer>();

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.month_activity);
		
		linearlayout_calendar = (LinearLayout) this.findViewById(R.id.linearlayout_calendar_main);
		calendar_lifemanager = Calendar.getInstance(); //오늘 잘짜로 달력 생성

		m_lineLy = new LinearLayout[int_cell_count]; // / 7줄의 레이아웃 생성
		m_cellLy = new LinearLayout[int_cell_count * int_line_count]; // / 그안에 줄당 7개씩 총 49개의 레이아웃 생성
		text_dateBtn = new TextView[int_cell_count * int_line_count]; // / 동일한 갯수의 버튼도 생성
		linearlayout_horizontalLine = new LinearLayout[int_cell_count+1]; // / 세로 구분선 레이아웃
		linearlayout_verticalLine = new LinearLayout[(int_cell_count) * (int_line_count+1)]; // / 가로 구분선 레이아웃

		
		m_displayScale = superContext.getResources().getDisplayMetrics().density;
		m_topTextSize = m_displayScale * 12.0f;
		m_textSize = m_displayScale * 12.0f;
		m_colorParam = new gsCalendarColorParam();
		initCalendar();
		
		Intent intent = new Intent(superContext, CalendarSelectDialogActivity.class);
		startActivityForResult(intent, 0);
	}
	
	@Override
	protected void onActivityResult(int requestCode, int resultCode, Intent data) {
		super.onActivityResult(requestCode, resultCode, data);
		
		if (resultCode == Activity.RESULT_OK)
		{
			String selectData = data.getStringExtra("asdf");
			Log.e("123123", selectData);
			CalendarConnect.getCalendarConnect().loadEvents(selectData, superContext);
		}
	}
	
	public void initCalendar(){
		createViewItem();//달력 생성에 필요한 리니어레이아웃을 나누고 설정하기
		setLineParam();//생성한 달력의 선을 그리기
		setLayoutParams();//생성한 달력의 날짜 색 배경등을 설정하기
		
		setContentext();
		setOnEvent();
		setControl();
		printView();
		addHoliday(1225);addHoliday(1125);
		applyHoliday();
	}
	
	public void createViewItem(){
		for (int i = 1; i <= int_line_count*2+1; i++){
			// / 짝수라인일때는
			if (i % 2 == 0){	// / 라인은 13개 라인이지만 내용이 표시되는 라인은 7개임
				m_lineLy[(i-2) / 2] = new LinearLayout(superContext);
				linearlayout_calendar.addView(m_lineLy[(i-2) / 2]); // 만든 레이아웃을 자식으로 등록
				for (int j = 1; j <= int_cell_count * 2 + 1; j++){
					// / 달력 내용이 들어가는 칸
					if (j % 2 == 0){
						int pos = (((i-2) / 2) * (int_cell_count)) + ((j-2) / 2);
						m_cellLy[pos] = new LinearLayout(superContext);
						text_dateBtn[pos] = new TextView(superContext);
						
						m_lineLy[(i-2) / 2].addView(m_cellLy[pos]);
						m_cellLy[pos].addView(text_dateBtn[pos]);
						
					}else{ // / 이건 단순한 경계선
						int pos = (((i-2) / 2) * (int_cell_count+1)) + ((j-1) / 2);
						linearlayout_verticalLine[pos] = new LinearLayout(superContext);
						m_lineLy[(i-2) / 2].addView(linearlayout_verticalLine[pos]);
					}
				}
			}else{//가로줄
				linearlayout_horizontalLine[(i - 1) / 2] = new LinearLayout(superContext);
				linearlayout_calendar.addView(linearlayout_horizontalLine[(i - 1) / 2]);
			}
		}
	}

	public void setLineParam(){
		for (int i = 0; i < int_line_count + 1; i++){
			linearlayout_horizontalLine[i].setBackgroundColor(m_colorParam.m_lineColor); //라인색															
			 // / 가로 라인이니까 가로는 꽉 세로는 두께만큼
			linearlayout_horizontalLine[i].setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,int_line_size));
		}
	
		for(int i=0; i <(int_cell_count) * (int_line_count+1); i++){
			linearlayout_verticalLine[i].setBackgroundColor(m_colorParam.m_lineColor); // / 라인색
			//세로 라인 쭉 가로는 두께만큼
			linearlayout_verticalLine[i].setLayoutParams(new LinearLayout.LayoutParams(int_line_size,LayoutParams.FILL_PARENT));
		}
	}
	
	public void setLayoutParams(){
		// / 메인 레이아웃은 세로로 나열
		linearlayout_calendar.setOrientation(LinearLayout.VERTICAL);
		// / 만약 전체 배경이 있으면 넣어줌
		if (m_bgImgId != null){
			linearlayout_calendar.setBackgroundDrawable(m_bgImgId);
		}
		
		// / 세로줄 수만큼 루프 세로줄은 날짜 표기되는 줄 + 경계선 줄수
		for (int i = 0; i < int_line_count * 2 - 1; i++){

			if (i % 2 == 0){
				m_lineLy[i / 2].setLayoutParams( new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT,1));
				m_lineLy[i / 2].setOrientation(LinearLayout.HORIZONTAL);
				m_lineLy[i / 2].setLayoutParams( new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT,1));

				// / 한칸한칸 옵션을 설정
				for (int j = 0; j < int_cell_count; j++){
					int cellnum = ((i / 2) * int_cell_count) + j;
					// / 한칸한칸을 구성하는 레이아웃 사이즈는 역시 wrap_content로 설정
					LinearLayout.LayoutParams param = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT,1);
					// param.setMargins( 1, 1, 1, 1 ) ; /// 마진을 1씩 줘서 라인을 그린다.
					m_cellLy[cellnum].setLayoutParams(param);
					// / 한칸한칸 들어가는 버튼
					text_dateBtn[cellnum].setGravity(Gravity.CENTER);
					// / 이하는 배경색 글씨색 글씨 크기 설정하는 부분
					// / 첫라인은 월화수목금토일 표시하는 부분
					if (i == 0){
						// / 요일 표시하는 부분의 넓이 높이
						text_dateBtn[cellnum].setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT,1));

						// / 배경과 글씨색
						if (m_topCellBgImgId != null){
							m_cellLy[cellnum].setBackgroundDrawable(m_topCellBgImgId);
						}else{
							m_cellLy[cellnum].setBackgroundColor(m_colorParam.m_topCellColor);
						}

						// / 토요일과 일요일은 다른 컬러로 표시한다.
						switch (j){
						case 0:text_dateBtn[cellnum].setTextColor(m_colorParam.m_topSundayTextColor);
							break;
						case 6:text_dateBtn[cellnum].setTextColor(m_colorParam.m_topSaturdatTextColor);
							break;
						default:text_dateBtn[cellnum].setTextColor(m_colorParam.m_topTextColor);
							break;
						}
						// / 글씨 크기
						text_dateBtn[cellnum].setTextSize(m_topTextSize+3);
					}else{	 // / 이하는 날짜 표시하는 부분

						// / 숫자 표시되는 부분의 넓이와 높이
						text_dateBtn[cellnum].setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT,1));

						// / bg와 글씨색
						if (m_cellBgImgId != null){
							m_cellLy[cellnum].setBackgroundDrawable(m_cellBgImgId);
						}else{
							
							m_cellLy[cellnum].setBackgroundColor(m_colorParam.m_cellColor);
						}
						
						// 토요일과 일요일 숫자는 다른 컬러로 표시한다.
						switch (j){
						case 0:text_dateBtn[cellnum].setTextColor(m_colorParam.m_sundayTextColor);
							break;
						case 6:text_dateBtn[cellnum].setTextColor(m_colorParam.m_saturdayTextColor);
							break;
						default:
							text_dateBtn[cellnum].setTextColor(m_colorParam.m_textColor);
							break;
						}
						// / 글씨 크기
						text_dateBtn[cellnum].setTextSize(m_textSize);
					}
				}
			}
		}
	}
	

	
	//달력을 구성하는 년 월 일을 셋팅하기
	public void setContentext(){

		// / 달력을 하나 복사해서 작업한다.
		Calendar iCal = (Calendar) calendar_lifemanager.clone();

		// / 날짜를 겟~
		int_selectDay = iCal.get(Calendar.DATE);

		// / 날짜를 1로 셋팅하여 달의 1일이 무슨 요일인지 구함
		iCal.set(Calendar.DATE, 1);

		// / 요일표기하는 맨 위 7칸 + 요일이 첫 시작하는 칸임
		int_startPos = int_cell_count + iCal.get(Calendar.DAY_OF_WEEK) - Calendar.SUNDAY;

		// / 1달 더해서 다음달 1일로 만들었다가 1일을 빼면 달의 마지막날이 구해짐
		iCal.add(Calendar.MONTH, 1);
		iCal.add(Calendar.DATE, -1);
		int_lastDay = iCal.get(Calendar.DAY_OF_MONTH); // / 해달 달의 마지막날 겟~
		
		for (int k = 0; k < int_cell_count; k++){ //월화수목금토일 셋팅
			switch (k){
				case 0:text_dateBtn[k].setText(getString(R.string.Week_sun));;
				break;
				case 1:text_dateBtn[k].setText(getString(R.string.Week_mon));;
				break;
				case 2:text_dateBtn[k].setText(getString(R.string.Week_tue));;
				break;
				case 3:text_dateBtn[k].setText(getString(R.string.Week_wed));;
				break;
				case 4:text_dateBtn[k].setText(getString(R.string.Week_thu));;
				break;
				case 5:text_dateBtn[k].setText(getString(R.string.Week_fir));;
				break;
				case 6:text_dateBtn[k].setText(getString(R.string.Week_sat));;
				break;
				default:
				break;
			}
		}

		// / 7번부터 처음 시작위치 전까지는 공백으로 채움
		for (int i = int_cell_count; i < int_startPos; i++){
			text_dateBtn[i].setText("");
		}

		// / 시작위치부터는 1부터 해서 달의 마지막날까지 숫자로 채움
		for (int i = 0; i < int_lastDay; i++){
			text_dateBtn[i + int_startPos].setText((i + 1) + "");
		}

		// / 마지막날부터 끝까지는 공백으로 채움
		for (int i = int_startPos + int_lastDay; i < int_cell_count * int_line_count; i++){
			text_dateBtn[i].setText("");
		}
	
	}
	
	//각 버튼들에 setOnClickListener 주기
	public void setOnEvent(){
		// / 월화수목금토일 들어가있는 부분에는 눌러도 반응할 필요 없음
		for (int i = int_cell_count; i < int_cell_count * int_line_count; i++){
			final int k = i;
			text_dateBtn[i].setOnClickListener(new Button.OnClickListener(){

				@Override
				public void onClick(View v){

					if (text_dateBtn[k].getText().toString().length() > 0){
						calendar_lifemanager.set(Calendar.DATE,Integer.parseInt(text_dateBtn[k].getText().toString()));
						if (m_dayTv != null)
							m_dayTv.setText(calendar_lifemanager.get(Calendar.DAY_OF_MONTH) + "");
						redraw();
						setSelectedDay(m_colorParam.m_sundayTextColor, m_colorParam.m_textColor);//1
						myClickEvent(calendar_lifemanager.get(Calendar.YEAR),calendar_lifemanager.get(Calendar.MONTH),calendar_lifemanager.get(Calendar.DAY_OF_MONTH));
					}
				}
			});
		}		
	}
	
	@Override
	protected void onResume()
	{
		super.onResume();
		new ShowDialog().execute(0);
	}
	
	
	private class ShowDialog extends AsyncTask<Integer, Integer, Integer>{
		ProgressDialog dialog = null;
		@Override
		protected void onPreExecute() {
			super.onPreExecute();
			dialog = new ProgressDialog(superContext);
			dialog.setCancelable(false);
			dialog.setMessage("Loading...");
			dialog.show();
		}
		
		@Override
		protected Integer doInBackground(Integer... arg0) {
			if (arg0[0] == 0)
			{
				setDataSetting();
				return 0;
			}
			
			return null;
		}
		
		@Override
		protected void onPostExecute(Integer result) {
			super.onPostExecute(result);
			
			dialog.dismiss();
			
			if (result == 0)
			{
			
			}
		}
	}
	
	@Override
	public void setDataSetting() {
		// TODO Auto-generated method stub
		
	}
	
	
	
	
	
	
	
	
	
	
	
	
	
	//버튼을 넣어주면 알아서 옵션 넣어줌 (역시나 빈게 있으면 이벤트 안넣음)
	public void setControl(){
		button_preMonth = (Button) this.findViewById(R.id.button_beforemonth);
		button_nextMonth = (Button) this.findViewById(R.id.button_nextmonth);
		button_click = (Button) this.findViewById(R.id.button_click);

		
		if (button_preMonth != null) button_preMonth.setOnClickListener(new Button.OnClickListener(){

				@Override
				public void onClick(View v){
					preMonth();
				}
			});

		if (button_nextMonth != null) button_nextMonth.setOnClickListener(new Button.OnClickListener(){

				@Override
				public void onClick(View v){
					nextMonth();
				}
			});
		
		if (button_click != null) button_click.setOnClickListener(new Button.OnClickListener(){

			@Override
			public void onClick(View v){
				userMonth();
			}
		});
	}
	

	
	//달력을 띄운 다음 년 월 일을 출력해줌
	public void printView(){
		m_yearTv = (TextView) this.findViewById(R.id.input_year);
		m_mothTv = (TextView) this.findViewById(R.id.input_month);
		
		// / 텍스트 뷰들이 있으면 그 텍스트 뷰에다가 년 월 일을 적어넣음
		if (m_yearTv != null) m_yearTv.setText(calendar_lifemanager.get(Calendar.YEAR) + "");

		if (m_mothTv != null){
			// int imonth = iCal.get( Calendar.MONTH ) ;
			m_mothTv.setText((calendar_lifemanager.get(Calendar.MONTH) + 1) + "");
		}
	} // / 년도와 월을 앞~ 뒤~로

	//컬러값 파라메터 설정
	public void setColorParam(gsCalendarColorParam param){
		m_colorParam = param;
	}
	


	public void setTextSize(float size){

		m_topTextSize = m_displayScale * size;
		m_textSize = m_displayScale * size;
	}
	
	public void setTextSize(float textSize, float topTextSize){
		m_topTextSize = m_displayScale * topTextSize;
		m_textSize = m_displayScale * textSize;
	}
	
	public void redraw(){
		linearlayout_calendar.removeAllViews();
		initCalendar();
	}


	

	// /////////////////////////// 공휴일 처리 ///////////////////////
	//휴일을 MMdd형식으로 넣는다.
	//구정이 2월 4 5 6이라면
	//[0204] [0205] [0206] 이렇게 넣음
	public void addHoliday(int holiday_MMdd){
		arraylis_holiDay.add(holiday_MMdd);
	}
	
	
	
	
	//공휴일 리스트를 루프돌면서 해당 날짜를 일요일과 같은 색으로 변경
		public void applyHoliday(){
			// / 현재 달력의 월을 구함
			Integer iMonth = calendar_lifemanager.get(Calendar.MONTH) + 1;
			// / 휴일로 저장된 모든 날짜 루프 줄줄 돌음
			for (int k = 0; k < arraylis_holiDay.size(); k++){
				int holiday = arraylis_holiDay.get(k); // / 월과 일을 구한다음
				
				if (holiday / 100 == iMonth){ // / 월이 동일할 경우
					// / 해당 날짜를 휴일 컬러로 변경
					text_dateBtn[holiday % 100+int_startPos-1].setTextColor(m_colorParam.m_sundayTextColor);
				}
			}
		}
		
		
		
		
		//오늘 날짜의 백그라운드를 변경
		public void TodayBackgroundSetting(){
			// / 현재 달력의 월을 구함
			Integer iMonth = calendar_lifemanager.get(Calendar.MONTH) + 1;
			Integer iYear = calendar_lifemanager.get(Calendar.YEAR);
			
			// / 휴일로 저장된 모든 날짜 루프 줄줄 돌음
			Calendar year = Calendar.getInstance();
			int int_year = year.get(Calendar.YEAR);
			int int_month = Calendar.MONTH-1;
			int int_today = calendar_lifemanager.get(Calendar.DATE);
			Log.i("i", iYear +"");
			Log.i("int", int_year +"");
			
				if (int_month == iMonth && int_year == iYear){ // / 월이 동일할 경우
					// / 해당 날짜를 휴일 컬러로 변경
					Log.i("color", "red");
					text_dateBtn[int_today + int_startPos-1].setBackgroundColor(m_colorParam.m_sundayTextColor);
				}
			
		}
	
	//달력에서 날짜를 클릭하면 이 함수를 부른다.
	public void myClickEvent(int yyyy, int mm, int dd){
		mm = mm+1;
		Log.i("year", yyyy +"");
		Log.i("mm", mm +"");
		Log.i("dd", dd +"");
		Intent intent = new Intent(superContext, MonthDialogActivity.class);
		intent.putExtra("Asdf", 123);
		startActivity(intent);
	}

	@Override
	public void setFindView() {
		// TODO Auto-generated method stub
		
	}



	@Override
	public void setClickListener() {
		// TODO Auto-generated method stub
		
	}
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	// ////////////////// 선택한 날짜칸에 변화를 주는 함수 //////////////////////////
	//이녀석이 불러졌을때 상태는 날짜가 오늘로 선택되어있거나 뭔가 선택했을 것임
	//그럼으로 m_cellLy[ 날짜 + int_startPos ].setTextColor( ) ;
	//int_startPos가 구해져 있으니 날짜를 더하면 해당 날짜칸을 마음대로 바꿀 수 있음
	//선택된 날짜칸에 변화를 주기위한 함수 1호
	public void setSelectedDay(int cellColor, int textColor){
		m_colorParam.m_todayCellColor = cellColor;
		m_colorParam.m_todayTextColor = textColor;
		text_dateBtn[calendar_lifemanager.get(Calendar.DAY_OF_MONTH) + int_startPos - 1]
				.setTextColor(textColor);
		text_dateBtn[calendar_lifemanager.get(Calendar.DAY_OF_MONTH) + int_startPos - 1]
				.setBackgroundColor(cellColor);
	}

	//선택된 날짜칸에 변화를 주기위한 함수 2호
	public void setSelectedDayTextColor(int textColor){
		m_colorParam.m_todayTextColor = textColor;
		text_dateBtn[calendar_lifemanager.get(Calendar.DAY_OF_MONTH) + int_startPos - 1]
				.setTextColor(textColor);
	}

	//선택된 날짜칸에 변화를 주기위한 함수 3호
	public void setSelectedDay(Drawable bgimg){
		m_todayCellBgImgId = bgimg;
		m_colorParam.m_todayCellColor = 0x00000000;
		text_dateBtn[calendar_lifemanager.get(Calendar.DAY_OF_MONTH) + int_startPos - 1].setBackgroundDrawable(bgimg);
		Log.d("===", (calendar_lifemanager.get(Calendar.DAY_OF_MONTH) - 1) + "");
	}
	
	//배경으로 쓸 이미지를 설정
	public void setBackground(Drawable bg){
		m_bgImgId = bg;
	}
	
	public void setCellBackground(Drawable bg){
		m_cellBgImgId = bg;
	}
	
	public void setTopCellBackground(Drawable bg){
		m_topCellBgImgId = bg;
	}
	
	
	
	//버튼 클릭시 다음달 이전달 유저가 원하는 달로 이동
	public void preMonth(){
		calendar_lifemanager.add(Calendar.MONTH, -1);
		setContentext();
		printView();
	}

	public void nextMonth(){
		calendar_lifemanager.add(Calendar.MONTH, 1);
		setContentext();
		printView();
	}
	
	public void userMonth(){
		
		try {
			String year = m_yearTv.getText().toString().trim();
			String month = m_mothTv.getText().toString().trim();
			int int_year = Integer.parseInt(year);
			int int_month = Integer.parseInt(month);
			if(int_year>=1900){
				if(1<=int_month && int_month<=12){
					calendar_lifemanager.set(int_year, int_month-1, 1);
					setContentext();
					printView();
				}else{
					
				}
			}
		} catch (NullPointerException e)
		{
			
		} catch (Exception d)
		{
			
		} finally
		{
			
		}
	}
	
	
	
	
	
	
	
	
	
	
	
	
	
	

	static public class gsCalendarColorParam{
		int m_lineColor = 0xff000000; // / 경계선 색
		int m_cellColor = 0xffffffff; // / 칸의 배경색
		int m_topCellColor = 0xffcccccc; // / 요일 배경색
		int m_textColor = 0xff000000; // / 글씨색
		int m_sundayTextColor = 0xffff0000; // / 일요일 글씨색
		int m_saturdayTextColor = 0xff0000ff; // / 토요일 글씨색
		int m_topTextColor = 0xff000000; // / 요일 글씨색
		int m_topSundayTextColor = 0xffff0000; // / 요일 일요일 글씨색
		int m_topSaturdatTextColor = 0xff0000ff; // / 요일 토요일 글씨색
		int m_todayCellColor = 0x999999ff; // / 선택날짜의 배경색
		int m_todayTextColor = 0xffffffff; // / 선택날짜의 글씨색
	}

	
}